package com.gscitysfy.cus.drain.modules.duty.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.gscitysfy.cus.drain.modules.duty.entity.MoperDutyMnClasses;

import java.util.List;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author Administrator
 * @since 2022-03-29 15:06:16
 */
public interface IMoperDutyMnClassesService extends IService<MoperDutyMnClasses> {
    /**
     * description:
     *
     * @param moperDutyMnClassess
     * @return {@link int}
     */
    String addMoperDutyMnClasses(MoperDutyMnClasses moperDutyMnClassess);

    /**
     * description:
     *
     * @param moperDutyMnClassess
     * @return {@link int}
     */
    int updateMoperDutyMnClasses(MoperDutyMnClasses moperDutyMnClassess);

    /**
     * description:
     *
     * @param ids
     * @return {@link int}
     */
    Boolean deleteMoperDutyMnClasses(String ids);

    /**
     * description:
     *
     * @param id
     * @return {@link MoperDutyMnClasses}
     */
    MoperDutyMnClasses detailMoperDutyMnClasses(String id);

    /**
     * description:
     *
     * @param page
     * @param coamClassessStatu
     * @param coamDutyType
     * @return {@link IPage< MoperDutyMnClasses>}
     */
    IPage<MoperDutyMnClasses> getAll(Page<MoperDutyMnClasses> page, Integer coamClassessStatu, String coamDutyType, String coamClassessCode);

    /**
     * 获取所有启用未删除的班次信息
     *
     * @return
     */
    List<MoperDutyMnClasses> selectByEnableClassesStatu();

    /**
     * 获取正在启用的值班长班次数目
     * @return
     */
    Long getEnableLeaderClass();

}
